<?php
/**
* TestGuest version1.0
*===================================
* Copy 2012-2016 yc60
* Web:http://www.yc60.com
*===================================
* Author:Pan
* Date:2016-12-20
*
*/

session_start();//开启session

//随机码个数
$rand_code = 4;

//创建一个随机验证码
for($i=0;$i<$rand_code;$i++){
	$nmsg .= dechex(mt_rand(0,15));
}

//用session保存验证码
$_SESSION['code'] = $nmsg;


/*创建一张图像*/

//设定验证码图片长度和高度
$width = 75;
$height = 25;

//创建一张图片
$img = imagecreatetruecolor($width,$height);

//创建一个白色
$white = imagecolorallocate($img,255,255,255);

//填充背景
imagefill($img,0,0,$white);

//定义一个变量
$flag = false;
//假如它为真，显示边框，为假不显示边框
if($flag){  
	//创建一个边框
	// $black = imagecolorallocate($img,0,0,0);//黑色
	//随机色
	$rand_color = imagecolorallocate($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
	imagerectangle($img,0,0,$width-1,$height-1,$rand_color);//imagerectangle：画一个矩形
}

//随机画线条
for($i=0;$i<6;$i++){
	//创建随机色
	$rand_color = imagecolorallocate($img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
	//画线,也是随机色
	imageline($img,mt_rand(0,$width),mt_rand(0,$height),mt_rand(0,$width),mt_rand(0,$height),$rand_color);
}

//随机打雪花 *
for($i=0;$i<100;$i++){
	//创建随机色,s数值越大颜色越淡
	$rand_color = imagecolorallocate($img,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255));
	//随机输出雪花
	imagestring($img,1,mt_rand(1,$width),mt_rand(1,$height),'*',$rand_color);
}

//输出验证码
for($i=0;$i<strlen($_SESSION['code']);$i++){
	//字体随机色
	$rand_color = imagecolorallocate($img,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));
	//设置字体随机位置
    imagestring($img,5,$i*$width/$rand_code+mt_rand(1,10),mt_rand(1,$height/2),$_SESSION['code'][$i],$rand_color);
}


//输出图像
header('Content-Type:image/png');//标头
imagepng($img);//以png形式向浏览器输出图像

//销毁
imagedestroy($img);












































